package com.wbpay.sdk.request;

import com.wbpay.sdk.framework.ResponseCallback;
import com.wbpay.sdk.model.PayInfo;
import com.wbpay.sdk.params.PayParams;

import org.json.JSONObject;

import java.util.List;
import java.util.Map;

/**
 * 支付请求相关接口
 */
public interface IPayRequest {

    /**
     * 正式服务区地址
     */
    public static final String OFFICIAL_SERVER = "http://sdk.9you-nj.cn";

    /**
     * 正式服务区地址
     */
    public static final String TEST_SERVER = "http://10.0.0.80:9427";

    public static final String SERVER_URL = OFFICIAL_SERVER;

    /**
     * 请求支付宝支付参数接口
     */
    public static final String REQUEST_PAYINFO_URL = SERVER_URL + "/api/pay/apply";

    /**
     * 查询订单支付结果
     */
    public static final String REUQEST_ORDER_PAYRESULT = SERVER_URL + "/api/pay/query";


    /**
     * 获取当前游戏可用的支付列表
     *
     * @param gameParams
     * @param callback
     */
    public void queryPayList(Map<String, String> gameParams, ResponseCallback<List<PayInfo>> callback);

    /**
     * 获取阿里支付加密字符串
     */
    public void queryAlipayArgs(PayParams payParams, ResponseCallback<JSONObject> callback);

    /**
     * 获取威富通支付url
     * @param payParams
     * @param callback
     */
    public void requestSwiftPayUrl(PayParams payParams, ResponseCallback<JSONObject> callback);

    /**
     * 查询威富通的支付结果
     * @param orderId
     * @param callback
     */
    public void querySwiftPayResult(String appId, String channel, String orderId, ResponseCallback<JSONObject> callback);
}
